/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Compilador;

/**
 *
 * @author Analia
 */
public class Token
{

    public enum nombreToken   
    
    { AYUDA,REGISTRAR_USUARIO,REGISTRAR_DOCENTE,REGISTRAR_ALUMNO,REGISTRAR_DIRECTOR,
        REGISTRAR_MATERIA,REGISTRAR_GRUPO,RE_ALUMNOMATERIA,RE_DOCENTEMATERIA,RE_EXAMEN,
        RE_PROGRAMACION,RE_TIPOPREGUNTA,RE_PREGUNTA,RE_RESPUESTA,

      REGISTRAR_OFERTA, OFERTA_GENERAL, ELIMINAR_OFERTA, MODIFICAR_FECHA_LIMITE,
      LISTAR_USUARIOS,LISTAR_AREA,LISTAR_EMPRESA,LISTAR_TITULO,BUSCAR_OFERTA,LISTAR_OFERTAS,

        CANCELAR_PRODUCTO,LISTAR_PEDIDOS,
      LISTAR_CLIENTES,REGISTRAR,COMA,PTOCOMA,DOSPTOS,CA,CC,ID,NUMERO,FIN,ERROR,LISTPERSONAS,
    LISTAR_RESCLI,LISTAR_PRODUCTO,RESERVAR_PRODUCTO,RESERVAS_CLIENTE,
        DETALLE_RESERVAS,CANCELAR_RESERVA,LISTAR_PROMOCION};

    private nombreToken token  ;

    private Object dato;

    public Token()
    {           }

    public void setToken(nombreToken t,Object v)
    {
        token=t;
        dato=v;
    }

    public nombreToken getToken()
    {
        return this.token;
    }

    public Object getValor()
    {
        return this.dato;
    }

    public String tokenToString()
    {
        switch(token)
        {
            //----------  Evaluacion en linea--------

            case AYUDA:return "<AYUDA,"+dato.toString()+">";
            case REGISTRAR_USUARIO: return "<REGISTRAR_USUARIO"+ dato.toString()+">";
            case REGISTRAR_DOCENTE: return "<REGISTRAR_DOCENTE"+ dato.toString()+">";
            case REGISTRAR_ALUMNO: return "<REGISTRAR_ALUMNO"+ dato.toString()+">";
            case REGISTRAR_DIRECTOR: return "<REGISTRAR_DIRECTOR"+ dato.toString()+">";
            case REGISTRAR_MATERIA: return "<REGISTRAR_MATERIA"+ dato.toString()+">";
            case REGISTRAR_GRUPO: return "<REGISTRAR_GRUPO"+ dato.toString()+">";
            case RE_ALUMNOMATERIA: return "<RE_ALUMNOMATERIA"+ dato.toString()+">";
            case RE_DOCENTEMATERIA: return "<RE_DOCENTEMATERIA"+ dato.toString()+">";
            case RE_EXAMEN: return "<RE_EXAMEN"+ dato.toString()+">";
            case RE_PROGRAMACION: return "<RE_PROGRAMACION"+ dato.toString()+">";
            case RE_TIPOPREGUNTA: return "<RE_TIPOPREGUNTA"+ dato.toString()+">";
            case RE_PREGUNTA: return "<RE_PREGUNTA"+ dato.toString()+">";
            case RE_RESPUESTA: return "<RE_RESPUESTA"+ dato.toString()+">";

            // ----------- fin evaluacion en linea ------------
            //case ESTADISTICAS:return "<ESTADISTICAS,"+dato.toString()+">";

            
           /* case CANCELAR_PRODUCTO:return "<CANCELAR_PRODUCTO,"+dato.toString()+">";
            case LISTAR_PEDIDOS:return "<LISTAR_PEDIDOS,"+dato.toString()+">";


            case LISTAR_CLIENTES:return "<LISTAR_CLIENTES,"+dato.toString()+">";

            case LISTPERSONAS:return "<LISTPERSONAS,"+dato.toString()+">";
            case LISTAR_RESCLI:return "<LISTAR_RESCLI,"+dato.toString()+">";
            case LISTAR_PRODUCTO:return "<LISTAR_PRODUCTO,"+dato.toString()+">";
            case LISTAR_PROMOCION:return "<LISTAR_PROMOCION,"+dato.toString()+">";
            case DETALLE_RESERVAS:return "<DETALLE_RESERVAS,"+dato.toString()+">";
            case CANCELAR_RESERVA:return "<CANCELAR_RESERVA,"+dato.toString()+">";
            case RESERVAR_PRODUCTO:return "<RESERVAR_PRODUCTO,"+dato.toString()+">";
            case RESERVAS_CLIENTE:return "<RESERVAS_CLIENTE,"+dato.toString()+">";


            //      BOLSA DE TRABAJO
            case REGISTRAR_OFERTA: return "<REGISTRAR_OFERTA, "+dato.toString()+">";

            case OFERTA_GENERAL: return "<OFERTA_GENERAL"+ dato.toString()+">";
            case ELIMINAR_OFERTA: return "<ELIMINAR_OFERTA"+ dato.toString()+">";
            case MODIFICAR_FECHA_LIMITE: return "<MODIFICAR_FECHA_LIMITE"+ dato.toString()+">";
            
            case LISTAR_USUARIOS: return "<LISTAR_USUARIOS"+ dato.toString()+">";
            case LISTAR_AREA: return "<LISTAR_AREA"+ dato.toString()+">";
            case LISTAR_EMPRESA: return "<LISTAR_EMPRESA"+ dato.toString()+">";
            case LISTAR_TITULO: return "<LISTAR_TITULO"+ dato.toString()+">";
            case BUSCAR_OFERTA: return "<BUSCAR_OFERTA"+ dato.toString()+">";
             case LISTAR_OFERTAS: return "<LISTAR_OFERTAS"+ dato.toString()+">";
            */

            //case VER_OFERTAS:return "<VER_OFERTAS,"+dato.toString()+">";
            //case REGISTRAR:return "<REGISTRAR,"+dato.toString()+">";

            case COMA:return "<COMA,"+dato.toString()+">";
            case  PTOCOMA:return "<PTOCOMA,"+dato.toString()+">";
            case DOSPTOS:return "<DOSPTOS,"+dato.toString()+">";
            case CA:return "<CA,"+dato.toString()+">";
            case CC:return "<CC,"+dato.toString()+">";
            case ID:return "<ID,"+dato.toString()+">";
            case NUMERO:return "<NUMERO,"+dato.toString()+">";
            case FIN:return "<FIN,"+dato.toString()+">";
        }
       return "<ERROR,_>";
    }

}
